package com.xvyy.tingshu.album.service;

import com.xvyy.tingshu.model.album.BaseAttribute;
import com.xvyy.tingshu.model.album.BaseCategory1;
import com.xvyy.tingshu.model.album.BaseCategory3;
import com.xvyy.tingshu.model.album.BaseCategoryView;
import com.xvyy.tingshu.vo.album.category.CategoryVo;
import com.baomidou.mybatisplus.extension.service.IService;

import java.util.List;

public interface BaseCategoryService extends IService<BaseCategory1> {

    /**
     * 获取分类列表
     * @return
     */
    List<CategoryVo> getBaseCategoryList();

    /**
     * 根据分类id查询属性列表和值
     * @param category1Id
     * @return
     */
    List<BaseAttribute> findAttributeAndValue(Long category1Id);

    /**
     * 根据专辑id查询分类信息
     * @param albumId
     * @return
     */
    BaseCategoryView getAlbumInfoCategory(Long albumId);

    /**
     * 根据分类1的id查询分类3列表，并且只查询isTop=1的数据
     * @param c1Id
     * @return
     */
    List<BaseCategory3> getC1Id7TopBaseCategory3List(Long c1Id);

    /**
     * 根据一级分类id查询所有孩子
     * @return
     */
    CategoryVo getBaseCategoryList(Long c1Id);

    /**
     * 查询所有一级分类id集合
     * @return
     */
    List<Long> getCategory1IdList();
}
